Performance management system, management device, and performance management method

ABSTRACT

A performance management system includes: an information collection function unit configured to collect database utilization information indicating a utilization status of the database and component utilization information indicating a utilization status of components, which are constituent elements of the information system; a related component calculation function unit configured to acquire a component utilization, which is a proportion of an actual usage of the component to a maximum usage of the component, on the basis of the component utilization information and specify a related component related to the performance of the information system among the components on the basis of the component utilization and the database utilization information; and a prediction function unit configured to predict a future performance of the information system on the basis of utilization information of the related component.

BACKGROUND

The present invention relates to a technology for managing theperformance of an information processing system.

Regarding prediction of a response time of a database, a technologydisclosed in Japanese Patent No. 5686904, for example, is known. In thetechnology disclosed in Japanese Patent No. 5686904, future utilizationof a target system is predicted on the basis of utilization informationcollected from the target system.

Conventionally, an information system that includes a database (DB)server that receives data read/write commands from applications and astorage that stores databases is known.

A database program operating on a database server receives dataread/write commands from applications via a local area network (LAN)switch. The database program transmits data read/write commands to astorage via a storage area network (SAN) switch on the basis of thesecommands.

Examples of components used by a database program include a DB serverCPU and a DB server memory included in a database server, a storage CPU,a storage pool, and a storage port included in a storage, a LAN switchport, and a SAN switch port. When these components are overloaded, aresponse time of a database program deteriorates. In operationalmanagement of an information system having databases, it is requested topredict that the response time of a database program will deteriorate inthe future. In order to predict that the response time of a databaseprogram will deteriorate in the future, it is necessary to predict thatrespective components used by the database program will be overloaded.

SUMMARY

Conventionally, in a company which constructs and uses an informationsystem, the information system is constructed in a data center of itsown company. In this case, an operation administrator needed to predictwhether a component of an information system within the data center ofthe company will be overloaded. Due to this, the frequency of predictingwhether a component of the information system will be overloaded wasrelatively low.

However, in recent years, a service that offers operational managementof an information system to a plurality of companies on behalf of thecompanies has been proposed. In this case, a service provider whoprovides operational management of an information system on behalf of acompany needs to collect utilization information of information systemsof a plurality of customers at a management center and predict whethercomponents of respective information systems will be overloaded.

Due to this, the frequency of executing a process of predicting overloadof a component becomes remarkably high as compared to a case in which aninformation system is operated and managed by its own company.Therefore, there is a problem that a large amount of calculationresource required for the prediction process is required.

An object of the present invention is to provide a technology forreducing a load of managing the performance of an information system.

A performance management system according to an aspect of the presentinvention is a performance management system for managing a performanceof an information system having a database, the performance managementsystem including: an information collection function unit configured tocollect database utilization information indicating a utilization statusof the database and component utilization information indicating autilization status of components, which are constituent elements of theinformation system; a related component computation function unitconfigured to acquire a component utilization, which is a proportion ofan actual usage of the component to a maximum usage of the component, onthe basis of the component utilization information and specify a relatedcomponent related to the performance of the information system among thecomponents on the basis of the component utilization and the databaseutilization information; and a prediction function unit configured topredict a future performance of the information system on the basis ofutilization information of the related component.

Since a related component related to performance of an informationsystem is selected among components, and the future performance of theinformation system is predicted on the basis of the utilizationinformation of the related component, it is possible to reduce a load ofmanaging the performance of the information system.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a diagram illustrating an embodiment of a performancemanagement system according to the present invention;

FIG. 2 is a diagram illustrating an example of configuration informationand utilization information illustrated in FIG. 1;

FIG. 3 is a diagram illustrating an example of database configurationinformation illustrated in FIG. 2;

FIG. 4 is a diagram illustrating an example of storage configurationinformation illustrated in FIG. 2;

FIG. 5 is a diagram illustrating an example of LAN configurationinformation illustrated in FIG. 2;

FIG. 6 is a diagram illustrating an example of SAN configurationinformation illustrated in FIG. 2;

FIG. 7 is a diagram illustrating an example of database utilizationinformation illustrated in FIG. 2;

FIG. 8 is a diagram illustrating an example of server CPU utilizationinformation illustrated in FIG. 2;

FIG. 9 is a diagram illustrating an example of storage utilizationinformation illustrated in FIG. 2;

FIG. 10 is a diagram illustrating an example of storage port utilizationinformation illustrated in FIG. 2;

FIG. 11 is a diagram illustrating an example of storage CPU utilizationinformation illustrated in FIG. 2;

FIG. 12 is a diagram illustrating an example of storage pool utilizationinformation illustrated in FIG. 2;

FIG. 13 is a diagram illustrating an example of LAN switch utilizationinformation illustrated in FIG. 2;

FIG. 14 is a diagram illustrating an example of SAN switch utilizationinformation illustrated in FIG. 2;

FIG. 15 is a diagram illustrating an example of related componentinformation illustrated in FIG. 1;

FIG. 16 is a diagram illustrating an example of a prediction resultillustrated in FIG. 1;

FIG. 17 is a diagram for describing an example of a flow of specifying arelated component in the performance management system illustrated inFIG. 1;

FIG. 18 is a diagram for describing an example of a flow of predictingthe performance of a database in the performance management systemillustrated in FIG. 1;

FIG. 19 is a diagram for describing an example of calculated componentutilization in the performance management system illustrated in FIG. 1;and

FIG. 20 is a diagram for describing an example of a flow of predicting astorage response time in the performance management system illustratedin FIG. 1.

DETAILED DESCRIPTION OF THE EMBODIMENT

Hereinafter, an embodiment of the present invention will be describedwith reference to the drawings.

First Embodiment

FIG. 1 is a diagram illustrating an embodiment of a performancemanagement system of the present invention.

As illustrated in FIG. 1, a performance management system of the presentembodiment includes a plurality of data centers 1 provided forrespective customers and a management center 2 that manages theplurality of data centers 1 in a centralized manner.

The data center 1 includes application (AP) servers 10 a and 10 bprovided to correspond to applications provided by customers, a LANswitch 20, a DB server 30, a SAN switch 40, a storage 50, and amanagement server 60.

The AP servers 10 a and 10 b include APs 11 a and 11 b and ports 12 aand 12 b, respectively. The APs 11 a and 11 b are a customer managementprogram, a data analysis program, and the like and read and write dataon the DB server 30. The ports 12 a and 12 b are interfaces for couplingthe APs 11 a and 11 b to other devices via the LAN switch 20. The numberof AP servers is not limited to two as illustrated in the diagram, andthree or more AP servers may be provided so as to correspond toapplications provided by a customer. In this case, an AP and a port areprovided in each of the AP servers.

The LAN switch 20 is a switch that couples the AP servers 10 a and 10 band the DB server 30 and has ports 12 c to 12 e. These ports 12 c to 12e are interfaces for coupling the AP servers 10 a and 10 b and the DBserver 30.

The DB server 30 includes a database program 31, a CPU 32, a memory 33,and ports 12 f and 34 a. The database program 31 is a program formanaging data of the APs 11 a and 11 b and stores the data of the APs 11a and 11 b in the storage 50. The CPU 32 is a device that controls thedatabase program 31. The memory 33 is a device that temporarily storesdata managed by the database program 31. The port 12 f is an interfacefor coupling to other devices via the LAN switch 20 and the port 34 a isan interface for coupling to other devices via the SAN switch 40.

The SAN switch 40 is a switch that couples the DB server 30 and thestorage 50 and has ports 34 b and 34 c. These ports 34 b and 34 c areinterfaces for coupling the DB server 30 and the storage 50. The storage50 has a pool 51, a CPU 53, a memory 54, and a port 34 d. The pool 51 isa storage area formed of a plurality of solid state drives (SSD) 52. Thepool 51 may be formed of a hard disk drive (HDD) instead of SSD and maybe formed of a combination of SSD and HDD. The CPU 53 is a device thatcontrols read and write of data on the SSD 52. The memory 54 is a devicethat temporarily stores data.

The performance management system of the present embodiment manages theperformance of the information system having the DB server 30 thestorage 50 described above using the following configuration. Amanagement server 60 (a first management device) includes an informationcollection function unit 61, a related component calculation functionunit 62, configuration information 63, utilization information 64, andrelated component information 65 a. The information collection functionunit 61 collects database utilization information indicating theutilization status of the DB server 30 and component utilizationinformation indicating the utilization status of components such as theCPUs 32 and 53, the memories 33 and 54, the ports 12 f, 34 a, and 34 d,the pool 51, and the SSD 52 which are constituent elements of the DBserver 30 and the storage 50, for example. The related componentcalculation function unit 62 acquires a component utilization which isthe proportion of an actual usage of a component to a maximum usage ofthe component on the basis of the component utilization informationcollected by the information collection function unit 61 and specifies arelated component related to the performance of the information systemamong components on the basis of the component utilization and thedatabase utilization information collected by the information collectionfunction unit 61. The component utilization is the value of an indexrelated to the use of a component. An actual index is differentdepending on a component such as a CPU or a memory. The possible maximumvalue of the index is the maximum usage of the component. The value ofan index associated with the use of a component is the actual usage ofthe component. The proportion of the actual usage to the maximum usageis the component utilization.

The management center 2 has a management server 70 (a second managementdevice).

The management server 70 is coupled to the management server 60 of thedata center 1 via a communication network 3. The management server 70includes a prediction function unit 71, configuration information 63 b,utilization information 72, related component information 65 b, and aprediction result 73.

The prediction function unit 71 predicts a future performance of theinformation system on the basis of the utilization information of arelated component specified by the related component calculationfunction unit 62.

FIG. 2 is a diagram illustrating an example of the configurationinformation 63 a and the utilization information 64 illustrated in FIG.1.

As illustrated in FIG. 2, for example, the configuration information 63a illustrated in FIG. 1 includes database configuration information 100,storage configuration information 110, LAN configuration information120, and SAN configuration information 130. Moreover, the utilizationinformation 64 illustrated in FIG. includes database utilizationinformation 200, server CPU utilization information 210, storageutilization information 220, storage port utilization information 230,storage CPU utilization information 240, storage pool utilizationinformation 250, LAN switch utilization information 260, and SAN switchutilization information 270, for example.

FIG. 3 is a diagram illustrating an example of the databaseconfiguration information 100 illustrated in FIG. 2.

As illustrated in FIG. 3, for example, the database configurationinformation 100 illustrated in FIG. 2 includes a database ID 101, aserver ID 102, a storage ID 103, and a volume ID 104. The database ID101 is used for identifying a database. The server ID 102 indicates aserver on which a database identified by the database ID 101 operates.The storage ID 103 indicates a storage in which data of a databaseidentified by the database ID 101 is stored. The volume ID 104 indicatesa volume in which data of a database identified by the database ID 101is stored.

FIG. 4 is a diagram illustrating an example of the storage configurationinformation 110 illustrated in FIG. 2.

As illustrated in FIG. 4, for example, the storage configurationinformation 110 illustrated in FIG. 2 includes a storage ID 111, avolume ID 112, a CPU ID 113, a cache logical partition (CLPR) ID 114,and a pool ID 115. The storage ID 111 and the volume ID 112 are used foridentifying a storage and a volume, respectively. The CPU ID 113indicates a CPU that controls a volume identified by the volume ID 112.The CLPR ID 114 indicates a CLPR in which temporary data of a volumeidentified by the volume ID 112 is stored. The pool ID 115 indicates apool in which a volume identified by the volume ID 112 is stored.

FIG. 5 is a diagram illustrating an example of the LAN configurationinformation 120 illustrated in FIG. 2.

As illustrated in FIG. 5, for example, the LAN configuration information120 illustrated in FIG. 2 includes a LAN switch ID 121, a port ID 122,and a coupling destination ID 123. The LAN switch ID 121 and the port ID122 are used for identifying a LAN switch and a port, respectively. Thecoupling destination ID 123 indicates a server coupled to a portidentified by the port ID 122. FIG. 6 is a diagram illustrating anexample of the SAN configuration information 130 illustrated in FIG. 2.

As illustrated in FIG. 6, for example, the SAN configuration information130 illustrated in FIG. 2 includes a SAN switch ID 131, a port ID 132, acoupling destination ID 133. The SAN switch ID 131 and the port ID 132are used for identifying a SAN switch and a port, respectively. Thecoupling destination ID 133 indicates a server or a storage coupled to aport identified by the port ID 132.

FIG. 7 is a diagram illustrating an example of the database utilizationinformation 200 illustrated in FIG. 2.

As illustrated in FIG. 7, for example, the database utilizationinformation 200 illustrated in FIG. 2 includes a time point 201, adatabase ID 202, the number of transactions 203, and a transactionresponse time 204, and indicates the utilization status of a database.The number of transactions 203 indicates the number of transactions perunit time at a time point 201 of a database identified by the databaseID 202, and the transaction response time 204 indicates the responsetime at that time point.

FIG. 8 is a diagram illustrating an example of the server CPUutilization information 210 illustrated in FIG. 2.

As illustrated in FIG. 8, for example, the server CPU utilizationinformation 210 illustrated in FIG. 2 includes a time point 211, aserver ID 212, CPU utilizations 213 and 214 of respective databases, anda total CPU utilization 215. The CPU utilizations 213 and 214 ofrespective databases indicate the CPU utilizations of respectivedatabases at the time point 211 of a server identified by the server ID212, and the total CPU utilization 215 indicates a total CPU utilizationat that time point.

FIG. 9 is a diagram illustrating an example of the storage utilizationinformation 220 illustrated in FIG. 2.

As illustrated in FIG. 9, for example, the storage utilizationinformation 220 illustrated in FIG. 2 includes a time point 211, astorage ID 222, a volume ID 223, the number of random reads 224, thenumber of random writes 225, the number of sequential reads 226, thenumber of sequential writes 227, a random read amount 228, a randomwrite amount 229, a sequential read amount 238, and a sequential writeamount 239 and indicates the utilization status of a storage. Thestorage utilization information 220 indicates the number of accesses forrespective access types at the time point 221 of a volume identified bythe volume ID 223 using the number of random reads 224, the number ofrandom writes 225, the number of sequential reads 226, the number ofsequential writes 227, the random read amount 228, the random writeamount 229, the sequential read amount 238, and the sequential writeamount 239.

FIG. 10 is a diagram illustrating an example of the storage portutilization information 230 illustrated in FIG. 2.

As illustrated in FIG. 10, for example, the storage port utilizationinformation 230 illustrated in FIG. 2 includes a time point 231, astorage ID 232, port utilizations 233 and 234 of respective databases,and a total utilization 235 of respective ports. The port utilizations233 and 234 of respective databases indicate the utilizations ofrespective ports at the time point 231 of a storage identified by thestorage ID 232, and the total port utilization 235 indicates the totalutilization of respective ports at that time point.

FIG. 11 is a diagram illustrating an example of the storage CPUutilization information 240 illustrated in FIG. 2.

As illustrated in FIG. 11, for example, the storage CPU utilizationinformation 240 illustrated in FIG. 2 includes a time point 241, astorage ID 242, CPU utilizations 243 and 244 of respective databases,and a total utilization 245 of respective CPUs. The CPU utilizations 243and 244 of respective databases indicate the utilizations of respectiveCPUs at the time point 241 of a storage identified by the storage ID242, and the total CPU utilization 245 indicates the total CPUutilization at that time point.

FIG. 12 is a diagram illustrating an example of the storage poolutilization information 250 illustrated in FIG. 2.

As illustrated in FIG. 12, for example, the storage pool utilizationinformation 250 illustrated in FIG. 2 includes a time point 251, astorage ID 252, utilizations 253 and 254 of respective databases andrespective pools, and a total utilization 255 of respective pools. Theutilizations 253 and 254 of respective databases and respective poolsindicate the utilizations of respective pools at the time point 251 of astorage identified by the storage ID 252 and the total pool utilization255 indicates a total utilization of respective pools at that timepoint.

FIG. 13 is a diagram illustrating an example of the LAN switchutilization information 260 illustrated in FIG. 2.

As illustrated in FIG. 13, for example, the LAN switch utilizationinformation 260 illustrated in FIG. 2 includes a time point 261, a LANswitch ID 262, utilizations 263 and 264 of respective databases andrespective ports, and a total utilization 265 of respective ports. Theutilizations 263 and 264 of respective databases and respective portsindicate the utilizations of respective ports by a database at the timepoint 261 of a LAN switch identified by the LAN switch ID 262, and thetotal port utilization 265 indicates a total utilization of respectiveports at that time point.

FIG. 14 is a diagram illustrating an example of the SAN switchutilization information 270 illustrated in FIG. 2.

As illustrated in FIG. 14, for example, the SAN switch utilizationinformation 270 illustrated in FIG. 2 includes a time point 271, a SANswitch ID 272, utilizations 273 and 274 of respective databases andrespective ports, and a total utilization 275 of respective ports. Theutilizations 273 and 274 of respective databases and respective portsindicate utilizations of respective ports by a database at the timepoint 271 of a SAN switch identified by the SAN switch ID 272, and thetotal port utilization 275 indicates a total utilization of respectiveports at that time point.

FIG. 15 is a diagram illustrating an example of the related componentinformation 65 a illustrated in FIG. 1.

As illustrated in FIG. 15, for example, the related componentinformation 65 a illustrated in FIG. 1 includes a database ID 281, adate and time 282, and a related component 283. The related component283 indicates a component related to a transaction performance at thedate and time 282 with respect to a database identified by the databaseID 281.

FIG. 16 is a diagram illustrating an example of the prediction result 73illustrated in FIG. 1.

In FIG. 16, a vertical axis on the left side of the graph indicates adatabase response time, a vertical axis on the right side indicates acomponent utilization, and a horizontal axis indicates a time point. Aline graph 401 indicates a database response time, a solid lineindicates a past response time, and a broken line indicates a predictedresponse time. A line graph 402 indicates a component utilization, asolid line indicates a past utilization, and a broken line indicates apredicted utilization. A database response time threshold 403 indicatesa threshold of a database response time and is set to a valuecorresponding to a customer request. A component utilization threshold404 indicates a threshold of a component utilization and is set to avalue corresponding to a customer request.

A performance management method in the performance management systemconfigured in the above-described manner will be described by way of anexample of a method of reducing a prediction processing amount inprediction of a database response time as a first embodiment.

In order to manage the performance of an information system having theabove-described database, first, a related component related to theperformance of a database is specified among components which areconstituent elements of the information system. The component is a CPU,a memory, a port, a pool, a SSD, and the like.

FIG. 17 is a diagram for describing an example of a flow of specifying arelated component in the performance management system illustrated inFIG. 1.

When a related component is specified in the performance managementsystem illustrated in FIG. 1, first, the information collection functionunit 61 acquires configuration information of respective components(step S501). Specifically, the information collection function unit 61acquires configuration information from the DB server 30 and records theconfiguration information of the DB server 30 in the databaseconfiguration information 100 as illustrated in FIG. 3. Moreover, theinformation collection function unit 61 acquires configurationinformation from the storage 50 and records the configurationinformation of the storage 50 in the storage configuration information110 as illustrated in FIG. 4.

Furthermore, the information collection function unit 61 acquiresconfiguration information from the LAN switch 20 and records theconfiguration information of the LAN switch 20 in the LAN configurationinformation 120 as illustrated in FIG. 5. Furthermore, the informationcollection function unit 61 acquires configuration information from theSAN switch 40 and records the configuration information of the SANswitch 40 in the SAN configuration information 130 as illustrated inFIG. 6.

Subsequently, the information collection function unit 61 acquires theutilization information of respective components (step S502).Specifically, the information collection function unit 61 acquiresutilization information from the database program 31 and records theutilization information of the database program 31 in the databaseutilization information 200 as illustrated in FIG. 7. Moreover, theinformation collection function unit 61 acquires server CPU utilizationinformation from the DB server 30 and records the server CPU utilizationinformation of the DB server 30 in the server CPU utilizationinformation 210 as illustrated in FIG. 8. Furthermore, the informationcollection function unit 61 acquires utilization information from thestorage 50 and records the utilization information of the storage 50 inthe storage utilization information 220 as illustrated in FIG. 9.Furthermore, the information collection function unit 61 acquiresutilization information of the LAN switch 20 and records the utilizationinformation of the LAN switch 20 in the LAN switch utilizationinformation 260 as illustrated in FIG. 13. Furthermore, the informationcollection function unit 61 acquires utilization information from theSAN switch 40 and records the utilization information of the SAN switch40 in the SAN switch utilization information 270 as illustrated in FIG.14.

Subsequently, the related component calculation function unit 62calculates component utilizations of respective applications (stepS503). The component utilization is the proportion of an actual usage ofa component resulting from application of a load to a component by anapplication, to a maximum usage corresponding to a maximum performanceof the component. The component utilization can be calculated using acomponent utilization record which is the component utilizationcorresponding to the past record of the component. For example, when anapplication B makes 10 accesses per second with respect to a component Aof which the maximum number of accesses is 100 per second, theutilization of the component A by the application B is 10/100=10%. Themaximum numbers of accesses to a CPU, a port, and a pool of a storageare calculated by the following equations.

(Maximum number of accesses)=1/((Access processing time)+(Datatransmission time))  (1)

(Access processing time)=(Random read processing time)×(Random readrate)+(Random write processing time)×(Random write rate)+(Sequentialread processing time)×(Sequential read rate)+(Sequential writeprocessing time)×(Sequential write rate)  (2)

(Data transmission time)=(Random read transmission time per unitsize)×(Random read size)+(Random write transmission time per unitsize)×(Random write size)+(Sequential read transmission time per unitsize)×(Sequential read size)+(Sequential write transmission time perunit size)×(Sequential write size)  (3)

Different values are defined in advance for the respective processingtimes and the respective transmission times of a CPU depending on astorage model. Moreover, different values are defined in advance for therespective processing times and the respective transmission times of aport depending on a port type and a link speed. Furthermore, differentvalues are defined in advance for the respective processing times andthe respective transmission times of a pool depending on a drive typeand a RAID level.

The related component calculation function unit 62 calculates the numberof random reads, the number of random writes, the number of sequentialreads, the number of sequential writes, the random read amount, therandom write amount, the sequential read amount, and the sequentialwrite amount which serve as a metric for respective components withrespect to each application on the basis of the database configurationinformation 100, the storage configuration information 110, and thestorage utilization information 220.

Subsequently, the related component calculation function unit 62calculates the random read rate, the random write rate, the sequentialread rate, and the sequential write rate from the number of randomreads, the number of random writes, the number of sequential reads, andthe number of sequential writes. Moreover, the related componentcalculation function unit 62 calculates the random read size, the randomwrite size, the sequential read size, and the sequential write size fromthe number of random reads, the number of random writes, the number ofsequential reads, the number of sequential writes, the random readamount, the random write amount, the sequential read amount, and thesequential write amount. After that, the related component calculationfunction unit 62 calculates the access processing time and the datatransmission time by substituting the calculation result into equations2 and 3 and calculates the maximum number of accesses by substitutingthe calculated access processing time and the calculated datatransmission time into equation 1.

After that, the related component calculation function unit 62calculates the component utilizations of respective applications byequation 4 on the basis of the maximum number of accesses serving as themaximum usage and the current number of accesses serving as the actualusage.

(Component utilization)=(Current number of accesses tocomponent)/(Maximum number of accesses of component)  (4)

By the above-described calculation, the related component calculationfunction unit 62 calculates a storage port utilization and records thecalculation result in the storage port utilization information 230.Moreover, the related component calculation function unit 62 calculatesa storage CPU utilization and records the calculation result in thestorage CPU utilization information 240. Furthermore, the relatedcomponent calculation function unit 62 calculates a storage poolutilization and records the calculation result in the storage poolutilization information 250.

As for a component for which the component utilization has beenobtained, the related component calculation function unit 62 does notneed to perform the above-described calculation. The related componentcalculation function unit 62 calculates the component utilization on thebasis of the component utilization information as described above withrespect to a component for which the information corresponding to thecomponent utilization has not been acquired as the component utilizationinformation. Therefore, it is possible to make determination on arelated component with respect to a component for which the informationcorresponding to the component utilization is not obtained.

Subsequently, the related component calculation function unit 62calculates correlation coefficients between the number of transactions203 (that is, the number of transactions processed in unit time by adatabase) in the database utilization information 200, which is an indexrelated to the use of components related to a database, and theutilizations of components related to the database, including the serverCPU utilization 213, the storage port utilization 233, the storage CPUutilization 243, the pool utilization 253, the LAN switch portutilization 263, and the SAN switch port utilization 273 (step S504).Since it can be supposed that the operating APs 11 a and 11 b changedepending on the beginning or the end of a month, the day of a week, anda time period, the related component calculation function unit 62calculates the correlation coefficient for each week of a month, eachday of a week, and each time period (time point). In this manner, sincethe future performance of the information system is predicted using therelated component appropriate for respective days of a week andrespective time points, it is possible to predict the performance of theinformation system satisfactorily by the processing of a limited numberof components. Moreover, since the number of transactions per unit timeis used as an index of the use of a database, it is possible to specifya related component using an index which can be easily acquired inrelation to the use of a database.

Subsequently, the related component calculation function unit 62specifies a component related to the database performance in a certaintime period on the basis of the correlation coefficient calculated instep S504 (step S505). For example, a component of which the correlationcoefficient is equal to or larger than 0.7 which is a predeterminedthreshold is specified as a related component related to the databaseperformance. The related component calculation function unit 62 recordsthis result in the related component information 65 a. In this manner,since a component of which the utilization status has a strongcorrelation with the use of a database is specified as the relatedcomponent, it is possible to predict the performance of the databasesatisfactorily by performing the prediction process with respect to alimited number of components.

Subsequently, the related component calculation function unit 62transmits the related component information 65 a and the utilizationinformation and the database utilization information 200 of the relatedcomponent only to the management server 70 of the management center 2via the communication network 3 (step S506).

Conventionally, since the utilization information of all components iscollected from all customers, communication concentrates on themanagement center and a large line bandwidth is used. Moreover, sincethe utilization information of all components collected from allcustomers is stored in the management center, a large storage capacityhas to be prepared in the management center. However, in the presentembodiment, since the utilization information of the related componentonly is transmitted via the communication network 3, it is possible toreduce a line cost by reducing a load on lines and to reduce a recordingmedium cost by reducing the data volume recorded in the managementserver 70 of the management center 2. The related component calculationfunction unit 62 executes the process of step S506 at intervals of 1minute, 10 minutes, or 1 hour, for example. When a predetermined periodsuch as 1 week or 1 month has elapsed after the related component wasspecified (step S507), the flow returns to step S502, and the process ofspecifying the related component is executed periodically at a certainperiod. This is because there is a possibility that a change may occurin the configuration of the information system that manages theperformance when 1 week or 1 month has elapsed after the relatedcomponent was specified. Moreover, even when the configuration of theinformation system that manages the performance is changed, the flowreturns to step S502 and the related component calculation function unit62 executes the process of specifying the related component. In thisway, it is possible to appropriately specify the related component.

On the other hand, when a predetermined period such as 1 week or 1 monthhas not elapsed after the related component was specified, as describedabove, the flow returns to step S506, and the utilization information ofthe related component is transmitted at intervals of 1 minute, 10minutes, or 1 hour.

FIG. 18 is a diagram for describing an example of a flow of predicting aperformance of a database in the performance management systemillustrated in FIG. 1.

The performance management system illustrated in FIG. 1 executes theprocess of predicting the database performance periodically or when themanagement server 70 of the management center 2 has received theutilization information of the related component transmitted from themanagement server 60 of the data center 1 in step S506.

The configuration information, the utilization information, and therelated component information of the related component transmitted fromthe management server 60 to the management server 70 in step S506 arerecorded in the configuration information 63 b, the utilizationinformation 72, and the related component information 65 b of themanagement server 70, respectively.

First, the prediction function unit 71 predicts and calculates thefuture utilization of the related component on the basis of theutilization information of the related component transmitted in stepS506 and recorded in the utilization information 72. Moreover, theprediction function unit 71 predicts and calculates the futuretransaction response time on the basis of the transaction response time204 included in the database utilization information 200 of the relatedcomponent transmitted in step S506 and recorded in the utilizationinformation 72 (step S521). Regression analysis, autoregressiveintegrated moving average (ARIMA) model, and the like may be used as amethod for predicting future time-series information on the basis ofpast time-series information. In this manner, since the predictionfunction unit 71 calculates the future utilization of the relatedcomponent on the basis of the utilization information of the relatedcomponent and predicts a change in future in the response time of theinformation system on the basis of the calculated component utilization,the prediction process may be performed for the related component onlyand the load of the future prediction process of the information systemis alleviated.

The prediction function unit 71 records the utilization and thetransaction response time predicted in step S521 as the predictionresult 73 and determines whether the recorded utilization and therecorded transaction response time exceed predetermined thresholds afterthe elapse of a predetermined period (step S522).

When the predicted utilization and the predicted transaction responsetime exceed the predetermined thresholds after the elapse of thepredetermined period, the prediction function unit 71 reports that it ispredicted that the database response time exceeds a threshold (stepS523).

When it is predicted that the database response time does not exceed thethreshold, the process ends. In this case, as illustrated in FIG. 16,when it is predicted that the utilization of the related componentexceeds the component utilization threshold 404 at a time point 405,since it is supposed that the database response time deterioratesabruptly at a time point 406, it is reported that the database responsetime deteriorates at the time point 406. The prediction function unit 71reports these facts using the prediction result 73. In this manner,since it is supposed that the database response time deterioratesabruptly if the component utilization exceeds a predetermined threshold,it is possible to predict a time point at which the responsiveness ofthe database deteriorates by calculating the time point at which thecomponent utilization exceeds the predetermined threshold.

As described above, the related component related to the performance ofthe information system is specified among the components which areconstituent elements of the information system that manages theperformance and the future performance of the information system ispredicted on the basis of the utilization information of the relatedcomponent. Therefore, it is possible to reduce the amount of processingfor predicting the future utilization of a component related to thedatabase performance and to reduce the amount of calculation resource tobe prepared in the management center 2. When the management server 60stores the component utilization information collected by theinformation collection function unit 61 while thinning out the componentutilization information of components which are not specified as therelated component by the related component calculation function unit 62,it is possible to reduce a necessary storage capacity.

Second Embodiment

In the first embodiment, a performance management method in theperformance management system illustrated in FIG. 1 has been describedby way of an example of a method of reducing a prediction processingamount in prediction of a database response time. In the secondembodiment, a performance management method in the performancemanagement system illustrated in FIG. 1 will be described by way of anexample of a method of reducing a prediction processing amount inprediction of a storage response time.

FIG. 19 is a diagram for describing an example of calculated componentutilization in the performance management system illustrated in FIG. 1.

In FIG. 19, a vertical axis indicates the number of related metricaccesses and a horizontal axis indicates a time point. The number ofrelated metric accesses is the number of selected matrices of which thecorrelation coefficient with the maximum storage performance is equal toor larger than a predetermined threshold among the number of randomreads, the number of random writes, the number of sequential reads, thenumber of sequential writes, the random read amount, the random writeamount, the sequential read amount, and the sequential write amount inthe storage utilization information 220 illustrated in FIG. 9. Acalculation threshold 801 indicates a threshold of the number ofaccesses.

In the performance management system illustrated in FIG. 1, since thecomponent utilization increases at a time point at which the number ofrelated metric accesses is large, the related component calculationfunction unit 62 calculates the component utilization at time points 802to 805 at which the number of related metric accesses exceeds thecalculation threshold 801 and does not calculate the componentutilization at time points 806 and 807 at which the number of relatedmetric accesses does not exceed the calculation threshold 801. Thecalculation threshold 801 may a value corresponding to the top 10% timepoint and may be a value corresponding to 90% of the largest number ofrelated metric accesses.

FIG. 20 is a diagram for describing an example of a flow of predicting astorage response time in the performance management system illustratedin FIG. 1.

When a storage response time is predicted in the performance managementsystem illustrated in FIG. 1, first, the related component calculationfunction unit 62 calculates a correlation coefficient between themaximum number of accesses of a component corresponding to a maximumstorage performance and the matrices used in equations 1 to 3 (stepS541).

Subsequently, the related component calculation function unit 62specifies a metric related to the maximum number of accesses of acomponent as a related metric on the basis of the correlationcoefficient calculated in step S541 (step S542). For example, a metricof which the correlation coefficient is equal to or larger than 0.7 isspecified as a related metric.

Subsequently, the related component calculation function unit 62calculates the component utilization (step S543). In this case, therelated component calculation function unit 62 calculates the componentutilization at time points at which the number of related metricaccesses exceeds the calculation threshold 801 only.

Subsequently, the related component calculation function unit 62calculates the maximum value of the component utilizations at respectivedata intervals on the basis of the component utilization calculation instep S543 (step S544). For example, when a data interval is 1 hour,pieces of data obtained every 1 minute are aggregated to pieces of dataobtained every 1 hour.

After that, the component utilization is transmitted from the datacenter 1 to the management center 2 via the communication network 3, andthe prediction function unit 71 of the management server 70 predicts thestorage response time and the related component utilization and sends areport when the predicted values exceed thresholds (step S545).

In this manner, by calculating the component utilization at time pointsat which the number of related metric accesses exceeds a predeterminedcalculation threshold, it is possible to reduce the number of times ofcalculating the component utilization of the storage.

What is claimed is:
 1. A performance management system for managing aperformance of an information system having a database, the performancemanagement system comprising: an information collection function unitconfigured to collect database utilization information indicating autilization status of the database and component utilization informationindicating a utilization status of components, which are constituentelements of the information system; a related component calculationfunction unit configured to acquire a component utilization, which is aproportion of an actual usage of the component to a maximum usage of thecomponent, on the basis of the component utilization information andspecify a related component related to the performance of theinformation system among the components on the basis of the componentutilization and the database utilization information; and a predictionfunction unit configured to predict a future performance of theinformation system on the basis of utilization information of therelated component.
 2. The performance management system according toclaim 1, wherein the related component calculation function unitcalculates a correlation coefficient between the component utilizationand an index related to the use of the database based on the databaseutilization information and selects a component, of which thecorrelation coefficient is equal to or larger than a predeterminedthreshold, as the related component.
 3. The performance managementsystem according to claim 2, wherein the index related to the use of thedatabase is the number of transactions processed in unit time by thedatabase.
 4. The performance management system according to claim 1,wherein the related component calculation function unit calculates, withrespect to a component for which information corresponding to thecomponent utilization is not acquired as the component utilizationinformation, the component utilization on the basis of the componentutilization information.
 5. The performance management system accordingto claim 1, wherein the prediction function unit calculates a futurecomponent utilization of the related component on the basis of theutilization information of the related component and predicts a change,in the future, in a response time of the information system on the basisof the calculated component utilization.
 6. The performance managementsystem according to claim 5, wherein the prediction function unitcalculates a time point at which the calculated component utilizationexceeds a predetermined threshold.
 7. The performance management systemaccording to claim 1, wherein the related component calculation functionunit executes a process of specifying the related component periodicallyat fixed intervals and executes the process further when a configurationof the information system is changed.
 8. The performance managementsystem according to claim 2, wherein the related component calculationfunction unit calculates the correlation coefficient at every time pointeach day of a week and specifies the related component each day of aweek and at every time point, and the prediction function unit predicts,each day of a week and at every time point, the future performance ofthe information system on the basis of the utilization information ofthe related component.
 9. The performance management system according toclaim 1, further comprising: a first management device on which theinformation collection function unit and the related componentcalculation function unit are mounted; and a second management devicewhich is coupled to the first management device via a communicationnetwork, and on which the prediction function unit is mounted, whereinthe first management device transmits, to the second management device,only the utilization information of the related component among piecesof utilization information of the components.
 10. The performancemanagement system according to claim 4, wherein the related componentcalculation function unit calculates the component utilization only attime points, at which the number of accesses of a component exceeds apredetermined threshold, on the basis of the component utilizationinformation collected by the information collection function unit. 11.The performance management system according to claim 1, wherein of thecomponent utilization information collected by the informationcollection function unit, the component utilization information ofcomponents, which are not the related component, is stored afterthinning out the same.
 12. A management device collecting informationfrom an information system in a performance management system thatmanages a performance of the information system having a database, themanagement device comprising: an information collection function unitconfigured to collect database utilization information indicating autilization status of the database and component utilization informationindicating a utilization status of components, which are constituentelements of the information system; a related component calculationfunction unit configured to acquire a component utilization, which is aproportion of an actual usage of the component to a maximum usage of thecomponent, on the basis of the component utilization information andspecify a related component related to the performance of theinformation system among the components on the basis of the componentutilization and the database utilization information; and a predictionfunction unit configured to predict a future performance of theinformation system on the basis of utilization information of therelated component.
 13. A performance management method for managing aperformance of an information system having a database, the performancemanagement method comprising: collecting database utilizationinformation indicating a utilization status of the database andcomponent utilization information indicating a utilization status ofcomponents, which are constituent elements of the information system;operating related component calculation means to acquire a componentutilization, which is a proportion of an actual usage of the componentto a maximum usage of the component, on the basis of the componentutilization information; operating related component calculation meansto specify a related component related to the performance of theinformation system among the components on the basis of the componentutilization and the database utilization information; and operatingprediction means to predict a future performance of the informationsystem on the basis of utilization information of the related component.